local f = CreateFrame("Button", "WaterBowlBUTTON", UIParent, "SecureActionButtonTemplate")

f:SetAttribute("*type*", "macro") 
f:SetAttribute("macrotext1", "/cast Water Shield")
f:SetFrameStrata("BACKGROUND")
f:SetWidth(64)
f:SetHeight(64)

f:EnableMouse(true)
f:RegisterForClicks("AnyUp")
f:SetMovable(true)
f:SetClampedToScreen(true)

f:RegisterForDrag("RightButton")
f:SetMovable(true)
f:SetClampedToScreen(true)

f:SetScript("OnDragStart", function(f)
	f:StartMoving()
end)

f:SetScript("OnDragStop", function(f)
	f:StopMovingOrSizing()
end)

local t = f:CreateTexture(nil,"BACKGROUND")
t:SetTexture("Interface\\Icons\\Ability_Shaman_WaterShield")
t:SetAllPoints(f)
f.texture = t

f:SetPoint("CENTER",0,0)

f:SetScript("OnEvent", function(event, arg1, arg2, arg3)

	if arg1 == "COMBAT_TEXT_UPDATE" then
		if arg2 == "AURA_START" and arg3 == "Water Shield" then
			f:Hide()
		elseif arg2 == "AURA_END" and arg3 == "Water Shield" then
			f:Show()
		end		
	end
end)

f:RegisterEvent("COMBAT_TEXT_UPDATE")